package com.feng.chat.pojo;

import io.gitee.zerowsh.actable.annotation.AcColumn;
import io.gitee.zerowsh.actable.annotation.AcTable;
import io.gitee.zerowsh.actable.emnus.ColumnTypeEnums;

import java.time.LocalTime;

@AcTable(name = "group",comment = "聊天群组表")
public class Group {
    @AcColumn(name = "id",comment = "群ID",type = ColumnTypeEnums.INT,length = 20,isAutoIncrement = true,isKey = true)
    private Integer id;

    @AcColumn(name = "creator_id",defaultValue = "0",comment = "创建者ID(群主ID)",type = ColumnTypeEnums.INT)
    private Integer creator_id;

    @AcColumn(name = "group_name", defaultValue = "", comment = "群名称", type = ColumnTypeEnums.VARCHAR,length = 30, isNull = false)
    private String group_name;

    @AcColumn(name = "profile", defaultValue = "", comment = "群介绍", type = ColumnTypeEnums.VARCHAR,length = 100, isNull = false)
    private String profile;

    @AcColumn(name = "avatar", defaultValue = "", comment = "群头像", type = ColumnTypeEnums.VARCHAR,length = 200, isNull = false)
    private String avatar;

    @AcColumn(name = "max_num",defaultValue = "200",comment = "最大群成员数量",type = ColumnTypeEnums.INT)
    private Integer max_num;

    @AcColumn(name = "is_overt",defaultValue = "0",comment = "是否公开可见[0:否;1:是;]",type = ColumnTypeEnums.TINYINT)
    private Integer is_overt;

    @AcColumn(name = "is_mute",defaultValue = "0",comment = "是否全员禁言 [0:否;1:是;]，提示:不包含群主或管理员",type = ColumnTypeEnums.TINYINT)
    private Integer is_mute;

    @AcColumn(name = "is_dismiss",defaultValue = "0",comment = "是否已解散[0:否;1:是;]",type = ColumnTypeEnums.TINYINT)
    private Integer is_dismiss;

    @AcColumn(name = "created_at", comment = "创建时间", type = ColumnTypeEnums.DATETIME, isNull = true)
    private LocalTime createdAt;

    @AcColumn(name = "updated_at", comment = "更新时间", type = ColumnTypeEnums.DATETIME, isNull = true)
    private LocalTime updatedAt;

    @AcColumn(name = "dismissed_at", comment = "解散时间", type = ColumnTypeEnums.DATETIME, isNull = true)
    private LocalTime dismissed_at;

}
